package com.xiashitech.apiservice.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.stereotype.Component;
import java.util.Map;

@Data
@Component
@RefreshScope
@ConfigurationProperties(prefix = "api")
public class AuthConfig {
    private String signType;
    private String securityKey;
    private Boolean isSign;
    private Boolean isAcquireMetaData;
    private String metaDataUrlForTable;
    private String metaDataUrlForDB;
    private String metaDataUrlForDBService;
    private String metaDataUrlForTableShippingPort;
    private String metaDataUrlForApiRecordSizeRule;
    private String iamBaseUrl;
    private String userForAppCode;
    private String userForAppSecret;
    private String userForUsername;
    private String userForUrl;
    private String systemInfoUrl;
    private String apiUrlForListApiServices;
    private String apiUrlForCreateOrUpdateApiService;
    private String apiUrlForGetSystemByFQN;
    private String apiUrlForCreateOrUpdateSystem;
    private String apiUrlForListApis;
    private String apiUrlForCreateOrUpdateApi;
    private String apiUrlForUpdateDesenseParam;
    private Boolean diagnosis;
    private String apiUrlForUpdateApiParam;
    private boolean useAllAuthInMemory;
    private String userCategoryUrl;
    private String userListByCategoryUrl;
    private String apiUrlForGetGroupUserInfo;
    private String apiUrlForGetPaasGroupList;
    private String apiUrlForGetFullDamInfo;
    private String apiUrlForGetDamInfoByGroupId;
    private String apiUrlForAllAuthDesense;
    private String apiUrlForGetApiByFQN;
    private String apiUrlForGetWaterMarkStatus;
    private String metaDataUrlForTable1;
    private String metaDataUrlForApi;
    // systemId / map( agentDatabase / metadataDatabase )
    private Map<String, Map<String, String>> oracleDbMapping;
}
